home *** CD-ROM | disk | FTP | other *** search
/ Pascal Super Library / Pascal Super Library (CW International)(1997).bin / COMM / DTR / DTRCTRL.PAS < prev    next >
Pascal/Delphi Source File  |  1992-07-04  |  989b  |  40 lines

  1. Unit DTRCtrl;
  2.  
  3. Interface
  4.  
  5. Var
  6.    MCRState     : Byte;
  7.    COM          : Array [1..4] Of Word;
  8.  
  9.  
  10. Procedure DTRControl (COMPort: Byte; DTR: Boolean);
  11. Function DTRState (COMPort: Byte): Boolean;
  12.  
  13. Implementation
  14.  
  15. Procedure DTRControl (COMPort: Byte; DTR: Boolean);
  16. Begin
  17.  
  18.      MCRState := Port [COM [COMPort] + 4]; {Get Modem Control Register in MCRState}
  19.  
  20.      If (Not DTR) And (MCRState And $1 = 1) Then Dec (MCRState); {Drop DTR}
  21.      If (DTR)     And (MCRState And $1 = 0) Then Inc (MCRState); {Raise DTR}
  22.  
  23.      Port [COM [COMPort] + 4] := MCRState; {Set Modem Control Register from MCRState};
  24.  
  25.      End;
  26.  
  27. Function DTRState (COMPort: Byte): Boolean;
  28. Begin
  29.  
  30.      MCRState := Port [COM [COMPort] + 4]; {Get Modem Control Register in MCRState}
  31.      If MCRState And $1 = 1 Then DTRState := True else DTRState := False;
  32.      End;
  33.  
  34. Begin
  35.  
  36.      {COM Port adresses initialization}
  37.  
  38.      COM [1] := 1016; COM [2] := 760; COM [3] := 1000; COM [4] := 744;
  39.  
  40. End.